///*******************************************************************************
// * Copyright (c) 2000, 2006 IBM Corporation and others.
// * All rights reserved. This program and the accompanying materials
// * are made available under the terms of the Eclipse Public License v1.0
// * which accompanies this distribution, and is available at
// * http://www.eclipse.org/legal/epl-v10.html
// *
// * Contributors:
// * IBM Corporation - initial API and implementation
// *******************************************************************************/
//package org.eclipse.ui.tests.internal;
//
//import org.eclipse.jface.text.TextSelection;
//import org.eclipse.jface.text.source.IVerticalRuler;
//import org.eclipse.jface.text.source.SourceViewer;
//import org.eclipse.jface.viewers.ISelection;
//import org.eclipse.jface.viewers.SelectionChangedEvent;
//import org.eclipse.swt.graphics.Point;
//import org.eclipse.swt.widgets.Composite;
//
//public class ExtendedSourceViewer extends SourceViewer {
//
// /**
// * Constructs a new source viewer. The vertical ruler is initially visible.
// * The viewer has not yet been initialized with a source viewer configuration.
// *
// * @param parent the parent of the viewer's control
// * @param ruler the vertical ruler used by this source viewer
// * @param styles the SWT style bits
// */
// public ExtendedSourceViewer(Composite parent, IVerticalRuler ruler,
// int styles) {
// super(parent, ruler, styles);
// }
//
// /*
// * @see Viewer#getSelection()
// */
// public ISelection getSelection() {
// Point p = getSelectedRange();
// if (p.x == -1 || p.y == -1)
// return TextSelection.emptySelection();
//
// return new ExtendedTextSelection(getDocument(), p.x, p.y);
// }
//
// /**
// * Sends out a selection changed event to all registered listeners.
// *
// * @param offset the offset of the newly selected range
// * @param length the length of the newly selected range
// */
// protected void selectionChanged(int offset, int length) {
// ISelection selection = new ExtendedTextSelection(getDocument(), offset,
// length);
// SelectionChangedEvent event = new SelectionChangedEvent(this, selection);
// fireSelectionChanged(event);
// }
//}
//